import React from "react";
const Index = () => {
    return (
        <div>
            <ul>
                <li>
                    装饰器不能作用于函数 -
                    装饰器只能用于类和类的方法，不能用于函数，因为存在函数提升。
                </li>
                <li>
                    装饰器对类的行为的改变，是代码编译时发生的，而不是在运行时。-
                    装饰器能在编译阶段运行代码
                </li>
            </ul>
            <h3>优点</h3>
            <ul>
                <li>动态扩展类功能，比类继承灵活，且对客户端透明；</li>
                <li>
                    可以对同一个被装饰对象进行多次装饰，创建出不同行为的复合功能；
                </li>
            </ul>

            <h3>缺点</h3>
            <ul>
                <li>多层装饰比较复杂（灵活的同时会带来复杂性的增加）；</li>
                <li>
                    装饰嵌套过多，会产生过多小对象（每个装饰层都创建一个相应的对象）；
                </li>
                <li>
                    装饰嵌套过多，易于出错，且调试排查比较麻烦（需要一层一层对装饰器进行排查，以确定是哪一个装饰层出错）；
                </li>
            </ul>
        </div>
    );
};
export default Index;
